#pragma once
#include <stdio.h>
#include "stack.h"
void InsertSort(int *a,int n);
void PrintArray(int *a,int n);
void ShellSort(int *a,int n);
void HeapSort(int *a,int n);
void Swap(int *a,int *b);
void SelectSort(int*a,int n);
void BubbleSort(int*a,int n);
void QuickSort(int*a,int left,int right);
int GetMid(int *a,int left,int right);
int PartSort1(int *a, int left, int right);
int PartSort2(int *a,int left,int right);
int PartSort3(int *a,int left,int right);
void _MergeSort(int *a,int left,int right,int* tmp);
void MergeSort(int *a,int n);
void QuickSortNoR(int*a,int n);
void MergeSortNoR(int *a,int n);